package com.marvels.approve.manager.service;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.marvels.approve.manager.dto.OpinionTypeDTO;
import com.marvels.common.constants.CaseNodeConstant;
import com.marvels.common.exception.MarvelsBusinessException;

public interface IOpinionTypeService {
	
	/**
	 * @param opinionTypeDTO
	 * @return
	 * @throws MarvelsBusinessException
	 */
	public List<OpinionTypeDTO> findOpinionTypes(OpinionTypeDTO opinionTypeDTO)throws MarvelsBusinessException;
	
	/**
	 * @param id
	 * @return
	 * @throws MarvelsBusinessException
	 */
	public OpinionTypeDTO findOpinionType(Long id)throws MarvelsBusinessException;
	
	/**
	 * @param opinion
	 * @return
	 * @throws MarvelsBusinessException
	 */
	public int saveOpinionType(OpinionTypeDTO opinion)throws MarvelsBusinessException;
	

	public OpinionTypeDTO findOpinionType(String opinionTypeCode,String nodeCode,String patternCode)throws MarvelsBusinessException;
	
	
	/**将类型做成需要的结构
	 * @return
	 * @throws MarvelsBusinessException
	 */
	public Map<Integer,List<OpinionTypeDTO>> getOpinionTypes(String nodeCode)  throws MarvelsBusinessException;
}
